package com.ruoyi.admin.domain;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.ArrayList;
import java.util.List;

/**
 * 评论管理对象 zhx_comment
 * 
 * @author ruoyi
 * @date 2024-11-11
 */
public class ZhxCommentTree extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 评论id */
    private Long commentId;

    /** 父级评论id */
    @Excel(name = "父级评论id")
    private Long commentParentId;

    /** 用户id */
    @Excel(name = "用户id")
    private Long userId;

    /** 评论内容 */
    @Excel(name = "评论内容")
    private String commentContent;

    /** 评论主体类型 */
    @Excel(name = "评论主体类型")
    private String comBodyType;

    /** 评论主体id */
    @Excel(name = "评论主体id")
    private Long comBodyId;

    /** 回复用户id */
    @Excel(name = "回复用户id")
    private Long replyUserId;

    /** 点赞数（默认0） */
    @Excel(name = "点赞数", readConverterExp = "默=认0")
    private Long likeNum;

    /** 评论数（默认0） */
    @Excel(name = "评论数", readConverterExp = "默=认0")
    private Long commentNum;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /**
     * 评论列表
     */
    private List<ZhxCommentTree> children = new ArrayList<>();

    public List<ZhxCommentTree> getChildren() {
        return children;
    }

    public void setChildren(List<ZhxCommentTree> children) {
        this.children = children;
    }


    public void setCommentId(Long commentId) 
    {
        this.commentId = commentId;
    }

    public Long getCommentId() 
    {
        return commentId;
    }
    public void setCommentParentId(Long commentParentId) 
    {
        this.commentParentId = commentParentId;
    }

    public Long getCommentParentId() 
    {
        return commentParentId;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setCommentContent(String commentContent) 
    {
        this.commentContent = commentContent;
    }

    public String getCommentContent() 
    {
        return commentContent;
    }
    public void setComBodyType(String comBodyType) 
    {
        this.comBodyType = comBodyType;
    }

    public String getComBodyType() 
    {
        return comBodyType;
    }
    public void setComBodyId(Long comBodyId) 
    {
        this.comBodyId = comBodyId;
    }

    public Long getComBodyId() 
    {
        return comBodyId;
    }
    public void setReplyUserId(Long replyUserId) 
    {
        this.replyUserId = replyUserId;
    }

    public Long getReplyUserId() 
    {
        return replyUserId;
    }
    public void setLikeNum(Long likeNum) 
    {
        this.likeNum = likeNum;
    }

    public Long getLikeNum() 
    {
        return likeNum;
    }
    public void setCommentNum(Long commentNum) 
    {
        this.commentNum = commentNum;
    }

    public Long getCommentNum() 
    {
        return commentNum;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("commentId", getCommentId())
            .append("commentParentId", getCommentParentId())
            .append("userId", getUserId())
            .append("commentContent", getCommentContent())
            .append("comBodyType", getComBodyType())
            .append("comBodyId", getComBodyId())
            .append("replyUserId", getReplyUserId())
            .append("likeNum", getLikeNum())
            .append("commentNum", getCommentNum())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
